#ifndef COMMON_H
#define COMMON_H
#include "../../api/headers/dataTypes.h"

#define PANIC(msg) panic(msg, __FILE__, __LINE__)
#define K_PANIC(msg) kernel_panic(msg, __FILE__, __LINE__);
#define ASSERT(b) ((b) ? (void)0 : panic_assert(__FILE__, __LINE__, #b))


typedef struct registers
{
    u32int gs, fs, es, ds;
    u32int edi, esi, ebp, esp, ebx, edx, ecx, eax;
    u32int interrupt_number, error_code;
    u32int eip, cs, eflags, useresp, ss;
} registers_type;

void panic(const char *message, const char *file, u32int line);

void panic_assert(const char *file, u32int line, const char *desc);

#endif
